1. Field of the Invention
The present invention relates to a communication method, a communication apparatus, and a communication system having the communication apparatus, for relaying and delivering data from an information source to clients to provide traffic services of data such as video signals via a network such as Internet.
2. Related Background Art
An information system known as World Wide Web (hereinafter abbreviated as WWW) is rapidly spreading and used widely among a plurality of users. In WWW, a data server called a WWW server supplies data to a number of clients via a network such as Internet. A proxy server (hereinafter simply called a proxy) is also used in a local network having a number of clients which access the same data, in order to reduce the number of accesses to the WWW server by storing the data frequently accessed by local users.
Such a proxy has treated a complete set of data such as text data used in WWW or other networks, without permitting even one byte error. In contrast, multimedia data such as audio and video data recently increasing its amount is not a complete set itself, and has the characteristics that even if some data error occurs during the data transmission, this error does not become a fatal error. Furthermore, when live images or sounds picked up in real time are transmitted and broadcast via a network, it is impossible to store such data in the complete form because such data is renewed from time to time, and storing a complete set of such data is rather meaningless.
It is therefore understood from the above considerations that a conventional proxy is not suitable for use in the field such as multimedia live broadcast. The factor that makes the conventional proxy unsuitable mainly pertains to data storage. If a system called a delivery server or a relay server for delivering data collected in real time to a plurality of clients is configured by omitting the data storage function, this system can be used also for multimedia live broadcast.
Systems for broadcasting multimedia such as video and audio data via Internet are becoming available recently. For the reasons described above, some of these systems provide a delivery server for distributing and delivering data obtained in real time from an information source to a number of clients, in order to increase the number of users capable of accessing the video and audio data at the same time.
Such a delivery server can supply data to a new client which accesses the already relayed and delivered data by the delivery server, without supplying the data again from the information source. Therefore, the information source is not required to increase the data amount to be supplied to the network. This provides merits such as quick response of information services and good quality of delivered data. Further, it is a natural desire of a client to obtain data at the information source upstream from the delivery server as viewed from the client, from a site nearer to the client having a good access environment, i.e., good audio and video data quality.
In providing multimedia delivery services via Internet or the like, other services become necessary which notify each client of an accessible information source (transmitting station). At present, such service information is described stationarily in a file constituted of home pages possessed by a WWW server, and each client accesses this file to select a desired information source.
However, information of a proxy server near to each client cannot be acquired from only directory services provided by a conventional WWW home page. Still further, if audio and video data from the information source is live data, the audio and video data supplied from the information source changes from time to time. Therefore, it is preferable to change a method of processing such data from a method of processing general stationary data such as accessing a simply described file.
Next, problems associated with data transmission/reception in the above-described relay/delivery scheme will be discussed further.
As a recent high speed LAN and Internet become widely used, it becomes possible to use various services (supply of information, games and the like) presented by a remote computer via a computer network.
FIG. 24 is a conceptual diagram illustrating such services. A service provider 2402 is software running on a computer (hereinafter abbreviated as a host or a machine) and presents adequate services to users 2405 and 2406. Typical examples of services include information supply service by WWW, database service by a server-client system, and the like. It can be expected that a variety type of the contents of services will be presented as the multimedia technology develops.
In order for the users 2405 and 2406 to use such services, it is necessary to start up service clients 2403 and 2404 at proper hosts. The service clients 2403 and 2404 provide the users 2405 and 2406 with user interfaces for using services presented by the service provider 2402.
By using this user interface, a user selects a service provider which can present necessary services, and requests for the execution of services. The service client 2403, 2404 performs communication via the selected service provider 2402 and a network 2401 to allow the service requested by the user to be executed.
In such a system, it is necessary to supply the service client and a user with the information on where and how a service provider capable of dealing with a process desired by the user is mounted.
As a conventional method of acquiring the information of service providers distributed on a network, there is an approach that a service client broadcasts a message (hereinafter called a search message) for searching a service provider to all machines on the network at the same time.
The broadcast search message is transmitted to almost all machines connected to the network. Therefore, if there is any service provider in the network, this service provider can receive this search message. Upon reception of the search message, the service provider sends an answer message (reply message) back to the service requesting client so that the client can detect a presence of the service provider and acquire the information of the service provider.
However, the following problems occur when such an approach of broadcasting a search message, because a large scale of a recent computer network system.
(1) The search message is transmitted in a broad area.
As the search message is broadcast, this message is transmitted to all machines connected to the network and designated by the broadcast parameter.
Therefore, as the scale of the network becomes large, the search message is transmitted to a number of machines. However, this search message is meaningless to those machines different from service providers. Therefore, if the search message is broadcast to the whole network at the same time, the load of the whole network increases and the usage efficiency thereof is lowered.
This problem may be dealt with by properly limiting the area to which a search message is broadcast. However, if a desired service provider is not present in the limited search area, this service provider cannot be found and the service cannot be received.
(2) There is a host to which the search message does not reach.
In many cases a barrier (hereinafter called a firewall) is used for limiting the transfer of a message between two networks, a large scale network such as Internet and a small scale network such as a company LAN interconnected each other, in order to prevent information leakage and the like.
Therefore, the search message is intercepted by the firewall so that a service provider in the network at the back of the firewall cannot be detected.
Furthermore, in a-network having a very small bandwidth and a slow transmission speed, a search message may be lost during transmission. Also in such a case, detecting a service provider fails.
It is an object of the present invention to provide a communication method, a communication apparatus, and a communication system capable of solving the above-described problems.
The invention has been made in order to solve the above problems and aims at providing a communication method, a communication apparatus, and a communication system with such a communication apparatus, in which a portion of data from an information source is stored, and the stored data is supplied to a client in response to an instruction from the client.
According to a preferred embodiment of the invention, a communication apparatus interposed between an information source and a client via a network, is provided which comprises: storage means for storing a portion of data sent from the information source in accordance with setting information; and delivery means for delivering the data stored in the storage means to the client in response to a request from the client.
Another object of the invention is to provide a communication method, a communication apparatus, and a communication system with such a communication apparatus, in which an information source is requested to supply data in response to a request from a client, at least a portion of the data transmitted from the information source in response to the request is stored, and a predetermined amount of the stored data is transmitted.
Still another object of the invention is to provide a communication method, a communication apparatus, and a communication system with such a communication apparatus, in which an information source is periodically requested to supply data at a predetermined interval, a portion of the data is stored, and the stored data is transmitted as desired.
A further object of the invention is to provide a communication method providing good communication efficiency.
A still further object of the invention is to provide a communication method, a communication apparatus, and a communication system with a novel function.
The features of the invention will become apparent from the following detailed description when read in conjunction with the accompanying drawings.